Harjoitustyö arvostelu

points details
Code structure and readibility 5,0
Structure and modularity 1,5 Code is modular (correct use of libraries, correct use of folders). The code structure follows the principles of the course: main method create tasks, use of global variables when necessary,adequate use of global variables vs local variables. Code is easy to read
Code syntax and documentation 1,5 The code is easily to read, correctly indented. Functions and variables are commented. Variables and functions use descriptive names.
State Machine 2,0 The code utilizes properly a finite state machine. States are unique. Transitions are clear. States follows diagram provided in the design plan or students can provide new state diagram (name the states and the transitions). If diagram is not provided, students can create the diagram on the fly, but they will loose 1 point.
Required functionality 10,0
Feedback 2,0 Program gives feedback when detected a movement. Program gives feedback when BEEP is received.
Program is able to read and present data from the MPU 1,0
Program is able to detect at least 3 different movements 1,5 3 movements are necessary. Less movements will remove full points here. No movement at all does not validate to pass the work.
The detection algorithm uses data collected previously (training data). 1,5 Initial data collection is performed. Students are able to explain the data collection process. Files from which algorithm has been created is present (csv, figures...)
Program is able to send commands to the backend 2,0 Usign UART or other wireless method.
Program is able to receive and interprent commands from backends 2,0 Only commands to their id must be utilized. Commands are correctly filtered. Commands are processed correctly. They receive most of the commands (during the test one or two commands might be lost)Either UART or Wireless.
Extra Work 9,0
Additional features 9,0 1 point features: menu structure, extra UI with user promoting usage of device, data sent to the background system using sessions, usage of MSG, own features of user interface 2 points features: complex movement detection, speakers play recognizable music, no errors in detection or very low error level, big amount of tasks running simultaneously
Theoretical questions about implementation 3,0
Students are able to explain the code and justify their decisions 1,5 Students who are not able to explain a big part of the code or justify a big part of implementation decisions will have a 0 as a final grade of the project work (cannot pass the course)
Students answer theoretical questions about C and SensorTag 1,5 Questions can be any question related to the course material in relation with the final project: e.g: what is an interruption? What alternatives do you have to interruptions? what is an UART?